home *** CD-ROM | disk | FTP | other *** search
/ Mac-Source 1994 July / Mac-Source_July_1994.iso / C and C++ / Utilities / Winter Shell 1.0d2 / Source / Libraries / FrameLib / FrameLib.h < prev   
Encoding:
C/C++ Source or Header  |  1994-01-12  |  2.5 KB  |  52 lines  |  [TEXT/KAHL]

  1. #pragma once
  2.  
  3. #define FRAME_WIDTH                (1)        /* width of border */
  4. #define FRAME_FOCUS_MARGIN        (1)        /* margin to list input focus border */
  5. #define FRAME_FOCUS_WIDTH        (2)        /* width of list input focus border */
  6. #define FRAME_FOCUS_SIZE        (3)        /* FRAME_FOCUS_MARGIN + FRAME_FOCUS_WIDTH */
  7.  
  8. #define FRAME_VISIBLE            (1<<0)    /* set if frame is visible */
  9. #define FRAME_ACTIVE                (1<<1)    /* set if frame is active */
  10. #define FRAME_FOCUS                (1<<2)    /* set if frame has input focus */
  11. #define FRAME_ANCHOR_RIGHT        (1<<3)    /* set if right edge adjusted on resize */
  12. #define FRAME_ANCHOR_BOTTOM    (1<<4)    /* set if bottom edge adjusted on resize */
  13. #define FRAME_KEEP_ACTIVE        (1<<5)    /* set if always active */
  14. #define FRAME_KEEP_INACTIVE    (1<<6)    /* set if never active */
  15. #define FRAME_HSCROLL            (1<<7)    /* set if has horizontal scroll bar */
  16. #define FRAME_VSCROLL            (1<<8)    /* set if has vertical scroll bar */
  17. #define FRAME_LIST                (1<<9)    /* set if needs list input focus border */
  18.  
  19. typedef short FrameFlagsType;
  20.  
  21. typedef struct {
  22.     WindowPtr    window;    /* window containing frame */
  23.     Rect            bounds;    /* frame's bounding rectangle */
  24.     short            cursor;    /* id of cursor to display when mouse is in frame */
  25.     short            margin;    /* margin between content rectangle to border */
  26.     FrameFlagsType    flags;/* various flags */
  27. } FrameType, *FramePtr, **FrameHandle;
  28.  
  29. Boolean FrameValid(FrameHandle frame);
  30. FrameHandle FrameBegin(WindowPtr window, const Rect *bounds, short margin);
  31. void FrameEnd(FrameHandle frame);
  32. FrameFlagsType FrameFlags(FrameHandle frame);
  33. void FrameFlagsSet(FrameHandle frame, FrameFlagsType flags);
  34. Boolean FrameFlagTest(FrameHandle frame, FrameFlagsType flags);
  35. void FrameFlagSet(FrameHandle frame, FrameFlagsType flags, Boolean set);
  36. void FrameActivate(FrameHandle frame, Boolean active);
  37. void FrameFocus(FrameHandle frame, Boolean focus);
  38. Boolean FrameHilite(FrameHandle frame);
  39. void FrameCursor(FrameHandle frame, short cursor);
  40. void FrameContent(FrameHandle frame, Rect *content);
  41. void FrameBounds(FrameHandle frame, Rect *bounds);
  42. short FrameMinWidth(FrameHandle frame);
  43. short FrameMinHeight(FrameHandle frame);
  44. Boolean FrameWithin(FrameHandle frame, Point where);
  45. void FrameDraw(FrameHandle frame);
  46. void FrameGrow(FrameHandle frame, Rect *size);
  47. void FrameZoom(FrameHandle frame, short *width, short *height);
  48. void FrameResize(FrameHandle frame, short dh, short dv);
  49. Boolean FrameAdjustCursor(FrameHandle frame, Point where, RgnHandle cursor);
  50. const /* EventTableType */ void *FrameEventTable(void);
  51. void FrameEventTableRegister(void);
  52.